//1、 用 var 声明的变量 有变量提升
// 变量提升：将变量的声明 提升到
//         它所在作用域的顶部


// console.log(a);//undefined
// var a=1;

//---------
// 2、相同的作用域内 能重复声明变量
// var b=1;
// var b=2;
// console.log(b);//2

//---------
// 块 -- 代码块-- { 代码块 } 
    //--if(){} for(){} function(){}

// 3、var 没有块级作用域

// {
//     var c=123;
//     console.log(c);//123
// }
// console.log(c);//123

//用 var 声明的循环变量，会暴露出全局变量，
// 全局变量的值 就是 循环的终止条件
// for(var i=0;i<4;i++){
//     // console.log(i)//0,1,2,3
// }

// console.log(i)// 一个值 4
// 面试题
for(var i=0;i<4;i++){
    // (
    //     function(i){
            //
            setTimeout(function(){
    
                console.log(i)// 循环 4次，4个值 值是：4 
        
            },1000)
        // }
    // )(i)
      
    }